Half Adder
前提
ODD Number of Signals
攻略
Half Adderとは「半加算器」のことで、よく HA と省略されます。
HAは2つのビットを加算してその和と繰り上がりを返す回路です。10進数で考えるならば、1桁の数字を2つ受け取って足したときの1桁目と繰り上がりを計算します (例: 9と5を受け取り、和として4、繰り上がりとして1を返す)。
この計算を列挙すると次のようにまとめることができます。
$ 0_{(2)} + 0_{(2)} = 0_{(2)}
$ 0_{(2)} + 1_{(2)} = 1_{(2)}
$ 1_{(2)} + 0_{(2)} = 1_{(2)}
$ 1_{(2)} + 1_{(2)} = 10_{(2)}
このときの和 (の1桁目) を Sum 、桁上りを Carry といいます。
そしてこのSumとCarryについて 真理値表 を書くことができます。
Sumの真理値表
入力10101
入力20011
Sum0110
Carryの真理値表
入力10101
入力20011
Carry0001
この2つの真理値表にはそのまま対応するコンポーネントが存在することがわかると思います。Sumの方はXOR、Carryの方はANDです。
したがって、次のように回路を構成すればよいです。
https://scrapbox.io/files/623ddf1f7b9b6d001d3d5cb0.png